package com.today.step.lib.model;

import android.text.TextUtils;

import java.util.ArrayList;
import java.util.List;

import lecho.lib.hellocharts.model.AxisValue;
import lecho.lib.hellocharts.model.PointValue;
import lecho.lib.hellocharts.model.ValueShape;

/**
 * Created by shangsong on 17-10-24.
 */

public class LineChartViewParams {
    private boolean hasXAxes = true;
    private boolean hasYAxes = false;
    private String xAxesNames = "";
    private String yAxesNames = "";
    private boolean hasLines = true;
    private boolean hasPoints = true;
    private ValueShape shape = ValueShape.CIRCLE;
    private boolean isFilled = false;
    private boolean hasLabels = false;
    private boolean isCubic = false;
    private boolean hasLabelForSelected = false;
    private String colorStr = "#33B5E5";
    private String pointColorStr = "#33B5E5";
    private List<PointValue> pointValueList = new ArrayList<>();
    private List<AxisValue> xAxisValues = new ArrayList<>();
    private long yAxisMaxValue;

    public boolean isHasXAxes() {
        return hasXAxes;
    }

    public boolean isHasYAxes() {
        return hasYAxes;
    }

    public void setHasYAxes(boolean hasYAxes) {
        this.hasYAxes = hasYAxes;
    }

    public void setHasXAxes(boolean hasXAxes) {
        this.hasXAxes = hasXAxes;
    }

    public boolean isHasLines() {
        return hasLines;
    }

    public void setHasLines(boolean hasLines) {
        this.hasLines = hasLines;
    }

    public boolean isHasPoints() {
        return hasPoints;
    }

    public void setHasPoints(boolean hasPoints) {
        this.hasPoints = hasPoints;
    }

    public ValueShape getShape() {
        return shape;
    }

    public void setShape(ValueShape shape) {
        this.shape = shape;
    }

    public boolean isFilled() {
        return isFilled;
    }

    public void setFilled(boolean filled) {
        isFilled = filled;
    }

    public boolean isHasLabels() {
        return hasLabels;
    }

    public void setHasLabels(boolean hasLabels) {
        this.hasLabels = hasLabels;
    }

    public boolean isCubic() {
        return isCubic;
    }

    public void setCubic(boolean cubic) {
        isCubic = cubic;
    }

    public boolean isHasLabelForSelected() {
        return hasLabelForSelected;
    }

    public void setHasLabelForSelected(boolean hasLabelForSelected) {
        this.hasLabelForSelected = hasLabelForSelected;
    }

    public List<PointValue> getPointValueList() {
        return pointValueList;
    }

    public void setPointValueList(List<PointValue> pointValueList) {
        this.pointValueList = pointValueList;
    }

    public String getColorStr() {
        return colorStr;
    }

    public void setColorStr(String colorStr) {
        this.colorStr = colorStr;
    }

    public String getXAxesNames() {
        if (TextUtils.isEmpty(xAxesNames)) {
            xAxesNames = "";
        }
        return xAxesNames;
    }

    public void setXAxesNames(String xAxesNames) {
        this.xAxesNames = xAxesNames;
    }

    public String getYAxesNames() {
        if (TextUtils.isEmpty(yAxesNames)) {
            yAxesNames = "";
        }
        return yAxesNames;
    }

    public void setYAxesNames(String yAxesNames) {
        this.yAxesNames = yAxesNames;
    }

    public List<AxisValue> getXAxisValues() {
        return xAxisValues;
    }

    public void setXAxisValues(List<AxisValue> xAxisValues) {
        this.xAxisValues = xAxisValues;
    }

    public long getYAxisMaxValue() {
        return yAxisMaxValue;
    }

    public void setYAxisMaxValue(long yAxisMaxValue) {
        this.yAxisMaxValue = yAxisMaxValue;
    }

    public String getPointColorStr() {
        return pointColorStr;
    }

    public void setPointColorStr(String pointColorStr) {
        this.pointColorStr = pointColorStr;
    }
}
